package model

import (
	"time"
)

type AttachFile struct {
	FileId         uint      `gorm:"primaryKey;AUTO_INCREMENT;" json:"fileId"`
	FileFormerName string    `gorm:"type:VARCHAR(255);comment:上传前的名字" json:"fileFormerName"`                                   // 之前的名字
	FileName       string    `gorm:"type:VARCHAR(255);comment:存入时候的名字" json:"fileName"`                                        // 存入时候的名字
	FileSize       int       `gorm:"type:int;comment:文件大小" json:"fileSize"`                                                    // 存入附件大小
	UserId         uint      `gorm:"type:bigint;comment:userId" json:"userId"`                                                 // 用户id
	FileJoinId     int       `gorm:"type:bigint;comment:'文件关联的表主键id'" json:"fileJoinId"`                                       // 文件关联的表主键id
	FileJoinType   int       `gorm:"type:tinyint;comment:'文件关联表类型：1 商品表  FileJoinType'" json:"fileJoinType"`                   // 文件关联表类型：1 商品表  @see FileJoinType
	Hash           string    `gorm:"type:VARCHAR(60);comment:哈希值" json:"hash"`                                                 // 哈希值
	Bucket         string    `json:"bucket"`                                                                                   // 空间
	Status         int       `gorm:"type:tinyint;default:1;comment:状态 3 正常, 2 过期, 1 用户上传附件24小时内都没使用该附件，该附件变为过期" json:"status"` // 状态 3 正常, 2 过期, 1 用户上传附件24小时内都没使用该附件，该附件变为过期
	CreatedAt      time.Time `json:"-"`
	UpdatedAt      time.Time `json:"-"`
	ExpireAt       time.Time `json:"-"`
}
